import moment from "moment"
const data = [{
		name: "严重偏低",
		color: "#FA8F32"
	},
	{
		name: "偏低",
		color: "#f5a966"
	},
	{
		name: "标准",
		color: "#188B7E"
	},
	{
		name: "偏高",
		color: "#f5a966"
	},
	{
		name: "严重偏高",
		color: "#fe2600"
	},
	{
		name: "充足",
		color: "#188B7E"
	},
	{
		name: "达标",
		color: "#188B7E"
	},
	{
		name: "不达标",
		color: "#f74d2f"
	},
	{
		name: "偏胖",
		color: "#f74d2f"
	},
	{
		name: "偏瘦",
		color: "#FA8F32"
	},
]
const list = [{
		name: '体重/kg',
		list: ['严重偏低', '偏低', '标准', '偏高', '严重偏高'],
		value: ['0', '0.8', '0.9', '1.1', '1.2'],
		fun: (userInfo, value) => {
			if (userInfo.sex == 1) {
				return userInfo.height ? ((userInfo.height - 80) * 0.7 * Number(value)).toFixed(2) : ""
			} else if (userInfo.sex == 2) {
				return userInfo.height ? (((userInfo.height * 1.37) - 110) * 0.45 * Number(value)).toFixed(2) : ""
			}
			return ""
		},
	},
	{
		name: 'BMI',
		list: ['偏低', '标准', '偏高'],
		value: ['0', '1.85', '25'],
		fun: (userInfo, value) => {
			return value
		},

	},
	{
		name: '身体年龄/岁',
		list: ['达标', '不达标'],
		value: ['<=实际年龄', ' >实际年龄'],
		fun: (userInfo, value) => {
			if (userInfo.birthday) {
				const duration = moment.duration(moment().diff(userInfo.birthday));
				return duration.years()
			}
			return ""
		},

	},
	{
		name: '基础代谢/Kcal',
		list: ['达标', '不达标'],
		value: ['达标', '不达标'],
		fun: (userInfo, value) => {
			if (userInfo.birthday) {
				const duration = moment.duration(moment().diff(userInfo.birthday));
				const age = duration.years()
				if (userInfo.sex == 1) {
					if (age >= 18 && age <= 29) {
						return 24
					} else if (age >= 30 && age <= 49) {
						return 22.3
					} else if (age >= 50 && age <= 60) {
						return 21.5
					} else if (age >= 70) {
						return 21.5
					}

				}
				if (userInfo.sex == 2) {
					if (age >= 18 && age <= 29) {
						return 23.6
					} else if (age >= 30 && age <= 49) {
						return 21.7
					} else if (age >= 50 && age <= 60) {
						return 20.7
					} else if (age >= 70) {
						return 20.7
					}
				}
			}
			return ""

		},
	},
	{
		name: '水含量/kg',
		list: ['偏低', '标准', '充足'],
		value: ['偏低', '标准', '充足'],
		fun: (userInfo, value) => {
			if (userInfo.sex == 1) {
				if (value == '标准') {
					return 55
				}
				if (value == '充足') {
					return 65
				}
			}
			if (userInfo.sex == 2) {
				if (value == '标准') {
					return 45
				}
				if (value == '充足') {
					return 60
				}
			}
			return ""
		},

	},
	{
		name: '体内水分/%',
		// list: ['偏低', '标准', '充足']
	},
	{
		name: '去脂体重/kg',
		// list: ['标准']
	},
	{
		name: '蛋白质/kg',
		list: ['偏低', '标准', '充足'],
		value: ['偏低', '标准', '充足'],
		fun: (userInfo, value) => {
			if (userInfo.sex == 1) {
				if (value == '标准') {
					return 16
				}
				if (value == '充足') {
					return 18
				}
			}
			if (userInfo.sex == 2) {
				if (value == '标准') {
					return 14
				}
				if (value == '充足') {
					return 16
				}
			}
			return ""
		},




	},
	{
		name: '蛋白质率/%',
		// list: ['偏低', '标准', '充足']
	}, {
		name: '肌肉重量/kg',
		list: ['偏低', '标准', '充足'],
		value: ['偏低', '标准', '充足'],
		fun: (userInfo, value) => {
			if (userInfo.height) {

				if (userInfo.sex == 1) {

					if (Number(userInfo.height) < 160) {
						if (value == '标准') {
							return 38
						}
						if (value == '充足') {
							return 46.5
						}
					}
					if (Number(userInfo.height) >= 160 && Number(userInfo.height) <= 170) {
						if (value == '标准') {
							return 44
						}
						if (value == '充足') {
							return 52.4
						}
					}
					if (Number(userInfo.height) > 170) {
						if (value == '标准') {
							return 49.4
						}
						if (value == '充足') {
							return 59.4
						}
					}

				}
				if (userInfo.sex == 2) {
					if (Number(userInfo.height) < 150) {
						if (value == '标准') {
							return 29.1
						}
						if (value == '充足') {
							return 34.7
						}
					}
					if (Number(userInfo.height) >= 150 && Number(userInfo.height) <= 160) {
						if (value == '标准') {
							return 32.9
						}
						if (value == '充足') {
							return 37.5
						}
					}
					if (Number(userInfo.height) > 160) {
						if (value == '标准') {
							return 36.5
						}
						if (value == '充足') {
							return 42.5
						}
					}
				}
			}
			return ""
		}

	},

	{
		name: '肌肉占比/%',
		// list: ['偏低', '标准', '充足'],

	}, {
		name: '内脏脂肪等级',
		list: ['标准', '偏高', '严重偏高'],
		value: ['标准', '偏高', '严重偏高'],
		fun: (userInfo, value) => {
			console.log(userInfo, value)
			if (value == '标准') {
				return 0
			}
			if (value == '偏高') {
				return 9
			}
			if (value == '严重偏高') {
				return 14
			}
			return ""
		}
	}, {
		name: '骨量/kg',
		list: ['偏低', '标准', '偏高'],
		value: ['偏低', '标准', '偏高'],
		fun: (userInfo, value) => {
			if (userInfo.weight) {

				if (userInfo.sex == 1) {

					if (Number(userInfo.weight) < 60) {
						if (value == '标准') {
							return 2.3
						}
						if (value == '偏高') {
							return 2.7
						}
					}
					if (Number(userInfo.weight) >= 60 && Number(userInfo.weight) <= 75) {
						if (value == '标准') {
							return 2.7
						}
						if (value == '偏高') {
							return 3.1
						}
					}
					if (Number(userInfo.weight) > 75) {
						if (value == '标准') {
							return 3.0
						}
						if (value == '偏高') {
							return 3.4
						}
					}

				}
				if (userInfo.sex == 2) {
					if (Number(userInfo.weight) < 45) {
						if (value == '标准') {
							return 1.6
						}
						if (value == '偏高') {
							return 2.0
						}
					}
					if (Number(userInfo.weight) >= 45 && Number(userInfo.weight) <= 60) {
						if (value == '标准') {
							return 2.0
						}
						if (value == '偏高') {
							return 2.4
						}
					}
					if (Number(userInfo.weight) > 60) {
						if (value == '标准') {
							return 2.3
						}
						if (value == '偏高') {
							return 2.7
						}
					}
				}
			}
			return ""
		}

	},
	{
		name: '皮下脂肪',
		list: ['偏低', '标准', '偏高'],
		// value: ['偏低', '标准', '偏高'],
		fun: (userInfo, value) => {
			if (userInfo.sex == 1) {
				if (value == '标准') {
					return 8.6
				}
				if (value == '偏高') {
					return 16.7
				}

			}
			if (userInfo.sex == 2) {
				if (value == '标准') {
					return 18.5
				}
				if (value == '偏高') {
					return 26.7
				}
			}
			return ""
		}
	}, 
	{
		name: '体型',
		list: ['偏胖', '标准', '偏瘦']
	},



]
export const getColor = (name) => {
	const info = data.find(item => {
		return item.name == name
	})
	return info && info.color || '#666666'
}
export const getDictList = (name) => {
	const info = list.find(item => {
		return item.name == name
	})
	return info
}
